bootstrap-fix-include-next
authorLLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Sat, 4 May 2024 05:18:23 +0000 (07:18 +0200)
committerGianfranco Costamagna <locutusofborg@debian.org>
Sat, 4 May 2024 05:18:23 +0000 (07:18 +0200)
commit3045bea2846a62e217166e5672ba3f4ed07dd3e7
treea2e43e63db265e45b97ae4952150e2685ce0b93e
parent8855df71f64088e004ff2aae17ff733323c0b784
bootstrap-fix-include-next

When doing a bootstrap, we use a newly built clang.
When this one is used, if already installed on the system,
we have clang header in two places:
llvm-toolchain-7-7/build-llvm/lib/clang/7.0.0/include/inttypes.h
and
/usr/include/clang/7.0.0/include/inttypes.h

Because clang expects only one of his headers to be available, it uses
include_next to get the glibc (libc6-dev package) header.

However, in the previous example, because we have inttypes.h twice in the
include search path, clang's header will call itself without any effect.
Therefore, it will do include_next until the define from the libc is existing (ex: _INTTYPES_H)

Gbp-Pq: Name bootstrap-fix-include-next.diff
clang/lib/Headers/inttypes.h
clang/lib/Headers/limits.h